Repository navigation
Check the rendering of a few games against expected screenshots - #1114
Merged
Merged
Conversation
A few games get a rendering test (a gameplay test named "Rendering: ..." taking PNG screenshots): the 3D island (ambient occlusion, depth of field, bloom, tone mapping, terrain, water), the 3D light playground (sun, point and spot lights, shadows), the expanded 3D house horror (models, fog, flashlight, text) and the platformer (2D). scripts/check-rendering-screenshots.js runs only these tests with the latest build of GDevelop and compares the screenshots with the images of rendering-screenshots/ (or writes them with --update). The new rendering-screenshots CI job runs it on main, every night and on the branches changing these games, their images or the scripts: an image that differs while the game did not change is an early warning that the rendering of GDevelop changed. The code running the tests of a game moves to scripts/lib/GameplayTestsRunner.js, to be shared by both scripts, and can now run only some of the tests. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GFZna1tBkWVDbpAbTNnXpr
Contributor
The tests of the terrain extension itself (saved data, compatibility with older versions of GDevelop, world scale, brushes of the scene editor...) are removed: the island keeps the tests of the player on the terrain and its rendering test. The rendering tests have no description: it is shown to the users opening the games. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GFZna1tBkWVDbpAbTNnXpr
The texts are drawn with the font settings of the system: on CircleCI, they were drawn a pixel apart from the expected image, while the 3D rendering was the same. The other games show no text. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GFZna1tBkWVDbpAbTNnXpr
4ian
pushed a commit
that referenced
this pull request
Nov 5, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
An early warning when the rendering of GDevelop changes.
Rendering: ...taking PNG screenshots:scripts/check-rendering-screenshots.jsruns only these tests with the latest GDevelop build. It compares each screenshot withrendering-screenshots/<example>/<label>.png;--updaterewrites the expected images.rendering-screenshotsCircleCI job: onmain, every night, and on branches changing these games, their images or the scripts. The diff images (differences in magenta) are kept as artifacts.scripts/lib/GameplayTestsRunner.js, shared by both scripts. It can now run only some tests, with--cmd-argsfilters.Verified:
GDevelop's own engine gets similar checks on scenes built in code, run on every PR: 4ian/GDevelop#9339.
🤖 Generated with Claude Code
https://claude.ai/code/session_01GFZna1tBkWVDbpAbTNnXpr